<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>函数</title>
    <script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/lodash.js/4.17.21/lodash.min.js" type="application/javascript"></script>
    <script src="js/MyArrayUtils2.js"></script>
    <script>
      /* 
        函数
        就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用

        function 函数名(函数参数){
          //函数体
        }

        function是函数固定关键字
        函数名,命名规则同变量命名,推荐使用动词性质的名称(因为函数是功能,所以偏向操作)

        函数参数表示的是函数运行时需要传入的'原料',参数的个数,类型都是不一定的

        函数体表示函数调用后运行的代码(可以反复复用的代码)

        关于函数中的return
        如果调用函数后想要返回一个结果,则必须使用return来返回数据!
        return后面的同级代码不会执行!
      */
      //声明函数
      //注意: 函数的定义可以写在当前页面中,如果想要其他页面也可以复用,则推荐写在外部文件中
      function sayHello() {
        alert('你好呀!')
      }

      function maxNum(num1, num2) {
        /* if (num1 > num2) {
          return num1
        } else {
          return num2
        } */
        //返回结果
        return num1 >= num2 ? num1 : num2
      }

      //调用函数
      //sayHello()
      //console.log(maxNum(3, 5))

      //测试自定义数组工具类
      let max = getArrayMaxValue([1, 2, 3, 4, 5])
      console.log(max)

      let min = getArrayMinValue([1, 2, 3, 4, 5])
      console.log(min)

      let newArr = addArrayValue([1, 2, 3, 4], 2, 777)
      console.log(newArr)

      newArr = deleteArrayValueByIndex([1, 2, 3, 4], 2)
      console.log(newArr)

      newArr = deleteArrayValueByValue([1, 2, 2, 3, 3, 2, 4], 2)
      console.log(newArr)

      newArr = sortArray([3, 2, 1, 4, 1])
      console.log(newArr)

      newArr = sortArrayByReverse([3, 2, 1, 4, 1])
      console.log(newArr)

      newArr = reverseArray([1, 2, 3, 4, 5])
      console.log(newArr)

      newArr = deleteArrayMultiValue([2, 2, 3, 2, 1, 4, 4, 5, 1, 5])
      console.log(newArr)

      newArr = shuffleArray([1, 2, 3, 4, 5])
      console.log(newArr)
    </script>
  </head>
  <body></body>
</html>
